import numpy as np

# eye 生成主对角线上为1，的多维数组, np.eye(几行，几列，类型)
n1 = np.eye(5,5)
print(n1)

n2 = np.eye(5,5,dtype=int)
print(n2)

n3 = np.eye(4)
print(n3)


# 主对角上是非零的，其它为o，  主对角线上的值为传入的参数
n4 = np.diag([1,2,3,4,5])
print(n4,'===diag')



# 随机数的对角矩阵,np.random.rand(几行，几列）生成的元素为0-1之间的小数
n5 = np.random.rand(5,5)
print(n5,'===random')

# 生成指定范围的矩阵形状  np.random.uniform(范围开始,范围结束,(几行几列))
n6 = np.random.uniform(3,4,(3,4))
print(n6,'===random')

# 生成指定范围整的矩阵形状,np.random.randint(范围开始,范围结束,(几行几列))
n7 = np.random.randint(3,10,(3,4))
print(n7,'===random')

# 生成随机数列，（正太分部，机率相等,例：骰子六个面，每个面出现的概率是六分之一）两边小，中间大
n8 = np.random.randn(4,5)
print(n8,'===random')

# 设置随机种子，保证每次生成的矩阵相同
np.random.seed(30)
n9 = np.random.randint(4,10,(2,4))
print(n9,'===random')

